Skip to content

10.0#189

Open
pepetreshere wants to merge 1307 commits intoTRESCLOUD:PROD10-2018-01from
odoo:10.0
Open

10.0#189
pepetreshere wants to merge 1307 commits intoTRESCLOUD:PROD10-2018-01from
odoo:10.0

Conversation

@pepetreshere
Copy link
Copy Markdown

Prueba de actualizacion

Julien00859 and others added 29 commits December 5, 2018 09:41
The module `vatnumber` (which is not maintained anymore) uses an
incorrect validation method for Albanian VAT numbers. Therefore, we use
the library `stdnum`, on which `vatnumber` relies for most cases.

opw-1912680

closes #29280
If installed along with `auth_signup`, it sends an email when creating a missing user authenticated through LDAP.

It is a confusing message that makes no sense, because the user is, from his POV, not actually creating a new user, but just authenticating with a new app with his known company-wide credentials.

Besides, that invitation leads the user to change his password in Odoo, although he probably doesn't want to do that and have a password for Odoo and another in the LDAP server.

The best option is to disable that email completely, which is what this commit does.

closes #29243
The pager wasn't taking care of the filter

opw-1912293

closes #29360
The definition of `attachment_ids` on model `email_template.preview` is wrong,
because its table/columns refer to the model `mail.template`.  As the field is
only used to preview a result in a wizard form, it does not need to be stored.

closes #29349
Commit 5804246 introduced some improvements to speed up performances.
One of them was to check if a customize_show view was active or not but the
condition was on view.customize_show instead of view.active.

Thus, as that view is always a customize_show, the condition would always be
met.

closes #29414
- Install a second language, e.g. French
- Set Parter A language to French
- Create an invoice for A with a date due in the past
- On the partner form view, print the 'Due Payments'

The body of the letter is not translated in French.

Something quite weird appears:
- The corresponding string is exported in the `stock` module
- It is linked to the demo data `stock.res_company_1`, which corresponds
  to 'My Company, Chicago'.

Therefore, the translation cannot be found by the corresponding query
generated in `_generate_translated_field` and `_read_from_database`:
```
SELECT "res_company"."id" as "id",COALESCE("res_company__overdue_msg"."value", "res_company"."overdue_msg") as "overdue_msg" FROM "res_company" LEFT JOIN
                (SELECT DISTINCT ON (res_id) res_id, value
                 FROM "ir_translation"
                 WHERE name='res.company,overdue_msg' AND lang='fr_BE' AND value!=''
                 ORDER BY res_id, id DESC)
             as "res_company__overdue_msg" ON ("res_company"."id" = "res_company__overdue_msg"."res_id")
                        WHERE "res_company".id = 1  ORDER BY "res_company"."sequence" ,"res_company"."name"
```

Indeed, `res_company.id` is 1, while `res_company__overdue_msg.res_id`
is 3.

The root cause has been solved in v11, to we only export the necessary
term.

opw-1908337

closes #29525
By prefetching only the fields required for the `name_get`

`product.product` & `product.template`
have a huge number of fields,
and prefetching them just to compute
the name is overkill.

Especially, as the browse was done using
sudo, the prefetch was a bit useless as
it was stored in the sudo user cache,
which was most-likely not used afterwards
by the callee of name_get

For a database with 50.000 products,
this reduce the processing time
by 15 (from 60 seconds to 4 seconds measured)
Oversight in revision
a91ffcf

Multiple products can have the same template.

Passing multiple times the same template id
to the search domain to get the sellers
works, but better avoid the repetition
for the performances.
This revision is related to
12df3c6

The above revision serve its purpose as well,
but by avoiding to store the result in a variable,
and using the records cache instead,
we gain some memory, which is noticeable
when there are hundred of thousands products.

The sudo() is important, as it must be the
same environment then the above call to read
to use the same cache.
Otherwise the values won't be in the cache
of self (without sudo),
and it will go get it and prefetch other fields
in the database.
No decimal part in Vietnam Dong (đ - Việt Nam Đồng)

closes #29650
…sers

Currently name_search on res_partner holds code to be done by a customized SQL
query allowing to speedup the search [1]. However when dealing with given args
there may be a crash if there is a domain based on user_ids fields.

Indeed this field is defined as auto_join [2]. It means the result of get_sql
returns where parameters based on joined tables. Those tables are not available
in the from clause in the original query.

This commit fixes that issue by correctly taking the from_clause from get_sql.
That way joined tables are available. Small update of the query is necessary
as fields are now res_partner.{id/email/vat/reference} as there may be several
tables linked in the query.

A test has been added to avoid regression.

[1] See 05ec126 for a recent modification
    and implementation of this query, even if it exists since a looooong time
[2] See db8203c for the auto_join addition

closes #29827
closes issue #29352
The Dutch taxes will change the low tax 6% to 9% on 01/01/2019. Please add these tax code in the system and also change the affected fiscal positions. Both 6% and 9% needs to exist during the transition period.

closes #29374
The method `read()` may be very slow when reading relational fields and
computed fields, because the computed fields can be computed on a recordset
that is larger than expected.

The issue occurs on model 'res.partner' when reading fields 'child_ids' and
'purchase_order_count', for instance.  Suppose we read those two fields on a
partner with 1000 contacts.  First, the one2many field is read from the
database and stored to the cache; the latter adds the value ids to the
prefetching of 'res.partner'.  Then, the fields are fetched from the cache.
When 'purchase_order_count' is accessed on the partner, the field is computed
on all its children as well...

closes #29867
The condition was never validated

closes #29898
Before this commit, when the fiscal year was setting to 29/02.
The function that compute the fiscal year dates gives an error.
This occurs when the date passed as parameter wasn't a leap year.

Now, for the non leap years we use the 28/02.

opw-1917035

closes #29932
…omposer

Have a RFQ in draft. Log a note or send a new message, but use the full composer to do it.

Before this commit, the RFQ was set to sent

After this commit, it stays rightfully in draft
It is mark as sent, only if the button SEND RFQ is used

OPW 1908094

closes #29902
opw-1917605

Before this commit, when accounting is set to global rounding, the base
amount per tax is not correctly calculated.

Now, the Base amount per tax is calculated adding the rounded lines.

To test this issue, you need to set to global rounding and create a
customer invoice with the following lines :
line 1 = Qty:40; unit price:2.27; tax:15%; discount: 10%
line 2 = Qty:21; unit price:2.77; tax:15%; discount: 10%
line 3 = Qty:21; unit price:2.77; tax:15%; discount: 10%

When the invoce is printed, you would notice that the amount is 186.43
and it should be 186.42.

closes #30021
SQL improve the speed of the implied group
VS the orm version.

closes #30108
Task #1923443

Purpose
=======

The slides on the website showed the 'download' button regardless of the value of the 'download_security' field.
If the value is 'none', meaning that the slides are never downloadable, the button should be hidden.

closes #29904

closes #30051
Commit a07a076 restricts the prefetching to
`self` when accessing the fields to return.  This is too restrictive, as it
cancels prefetching of secondary records in computed fields.  In this commit we
limit the scope of the restriction to `self`'s model only; this fixes the
original issue without impacting other models.

closes #30133
When loading a partner form view, the ORM prefetches the computed fields
purchase_order_count and supplier_invoice_count for all the related
partners as well (parent, children, ..).

Instead of reading the orders and invoices once per partner, we group
them all together.

opw 1919933

closes #29788
Some sips provider don't use 2 as key_version.
E.g. mercanet uses '1' as production key.

Now we allow to override it in Ir Config Parameter for stable version.

Todo:
Need to make it customizable by end user into the configuration of acquirer.

Courtesy of BEK for reporting

opw-1916316

closes #30185
The super call of action_payslip_done executes the method compute_sheet.
Without this compute_sheet call, there is no salary lines and no accounting
move is created.

closes #29737
- Create a bank statement with more than 80 lines (therefore more than
  80 AML)
- Reconcile the lines
- Go back to the bank statement, and try to add a new line

An error arise:
"You cannot do this modification on a posted journal entry, you can just
change some non legal fields"

The error arise on the `move_line_ids` field on which the web client
tries to write.

Actually, this field is hidden since it is only used in the domain of a
stat button. We can make it read-only.

opw-1921138

closes #30266
nle-odoo and others added 30 commits August 28, 2019 09:20
The @import directive in less leave the @import as is if it detects .css
extension. Otherwise it will use the less import.

Since less 3.0.0 less/less.js@77fde7eb7 checking css extension regex
changed from:

/[#\.\&\?\/]css([\?;].*)?$/

to:

/[#\.\&\?]css([\?;].*)?$/

thus all our import of google fonts with URI like:

//fonts.googleapis.com/css?family=FontName

now are getting imported as less, thus they are included directly in the
output file with HTTP scheme URL which may be blocked on HTTPS instance.

With this fix, we specify that the import is a normal CSS one with (css)
import option:

http://lesscss.org/features/#import-atrules-feature-css

opw-2057037
closes #36167

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Before this patch, if some module was based on top of `auth_signup`, and `auth_oauth` was also installed in the same database, the only way to get the proper qcontext would be to call `super()` inside `web_auth_signup_qcontext`, which would produce a login, which is most likely not desired because such addon would try to add some logic on top of it that maybe prevents login based on some circumstances.

After this patch, any submodules can work properly without workarounds.

closes #34690

Signed-off-by: Christophe Simonis <chs@odoo.com>
opw-2060249

closes #36223

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
The fixes that this patch includes are:

- The tag URL for tags printed in short and expanded blog posts had no slug, thus producing a brand new URL. Now they have the slug.
- Any request landed without that slug is slugified with a 301 code, as with the rest of Odoo.
- The `<a>` elements in right column archives have now `rel="nofollow"`.
- The `<a>` elements in right column tag cloud, where more than 1 tag is used, have now `rel="nofollow"`.

closes #30832

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Backport of 9a48f67 to 10.0

Needed for odoo/enterprise#5422
Closes #36609

closes #36614

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Add nakometal

closes #36546

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Before this commit, search view was barely usable with Japanese IME.

For instance, when pressing ENTER while in composition mode and
IME prompts some suggestions, it made a search with the updated input
content. The expected behaviour should have been to update the input
content, without making the search yet.

This commit fixes the issue by turning off some actions of the
search view when typing during composition mode.

opw-2061590

Closes #35789

closes #36284

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
closes #36616

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
When .with_context() is called with a dictionary as 1st positional
argument, it will replace context (and not modify the referenced keys)
It may create bugs when losing the content of the context (e.g. remove
partner's language)

This is a partial backport of #36164 with the website part as
discussed.

closes #36692

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Suppose that a Task is added on a task via a studio customisation.
Then the _get_message_needaction method gets called on the onchange of the
toplevel task, which triggers another call to _get_message_needaction.
During that update, we get a self with a model.newID; its ids field is empty,
so the list of tasks res itself is empty.
As a result the method crashes on a malformed query.
This can in turn prevent the completion of some higher-level operation,
e.g. a state change on the task.

opw 1909043

closes #29084

closes #36813

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
before this commit: it gives error when we redirect to payumoney site

after this commit: payment testing in payumoney is working as expected

closes #36764

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
closes #37063

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Missing log for analyzing cron issues.
omission in d26e253

kill -3 (SIGQUIT) is not processed like the other signals so it doesn't
go through this bit of code, but leaving the AttributeError lurking
there is not a good idea.

closes #36587

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
KWD has 3 digits.

opw-2071909

closes #37229

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
closes #37453

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
closes #37445

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Avoid comparing bool and datetime
Fixes #36435

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This makes you actually able to install the module with demo data and unplugged from network. Otherwise, it's impossible.

closes #28098

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit prepares the eCommerce module for the changes introduced
in the new Stripe SCA module.

It does exactly 2 things:
- disable using token saved on Stripe for the eCommerce (slight feature
loss, but non-blocking since eCommerce customers can still use the
normal checkout flow)
- widgetize some eCommerce JS code so that the new module can plug
itself 'cleanly' into the payment flow (note the quotes)

Co-authored-by: Nikunj Ladava <nla@odoo.com>
This commit prepares the website payment module for the changes
introduced in the new Stripe SCA module.

Co-authored-by: Nikunj Ladava <nla@odoo.com>
This commit prepares the eCommerce module for the changes introduced
in the new Stripe SCA module.

It does exactly 1 thing:
- widgetize some website_quote JS code so that the new module can plug
itself 'cleanly' into the payment flow (note the quotes)

Co-authored-by: Nikunj Ladava <nla@odoo.com>
This commit prepares the payment base module for the changes introduced
in the new Stripe SCA module.

It does exactly 2 things:
- allow to specify 'black-listed' providers for s2s request in some
flows (needed because using Stripe tokens in the eCommerce will no
longer be supported and this blacklisting must be done at the model
level)
- allow to read some data on transactions from the frontend without
leaking too much info (by whitelisting the fields that will be included
in the response)

Co-authored-by: Nikunj Ladava <nla@odoo.com>
With the PSD2 directive coming into effect on September 14th,
was had no choice but to switch our Stripe integration to use
newer APIs that support Strong Customer Authentication (SCA for short).

This meant switching from the old stripe.js implementation for
'redirection' flow to the Stripe Checkout API and from the
Charge API to the newer SetupIntent API for s2s flows.

This new modules introduce these changes in a non-intrusive way,
this means that installing this module is *not* required for
all customers (e.g. instances only accepting payment to and
from countries that are not part of the EU), that installing it
will support SCA flows and that uninstallation leaves you with
a working instance as well. Essentially a backport of 9f5f2fc
in a seperate module.

Task 2039100

Co-authored-by: Nikunj Ladava <nla@odoo.com>
Revision c621da5 factorized some JS code from the ecommerce so that it
may be cleanly overriden in a 'fix' module required for a Stripe update.

Unfortunately, it broke the confirmation mechanism when paying with a
pre-recorded token in the eCommerce flow.

This commit reintroduces the required event handler so that token
payment confirmation works again.

opw-2283661
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.